	.text
.globl _swap_add
_swap_add:
	pushl	%ebp
	movl	%esp, %ebp
	subl	$24, %esp
	movl	8(%ebp), %eax
	movl	(%eax), %eax
	movl	%eax, -16(%ebp)
	movl	12(%ebp), %eax
	movl	(%eax), %eax
	movl	%eax, -12(%ebp)
	movl	8(%ebp), %edx
	movl	-12(%ebp), %eax
	movl	%eax, (%edx)
	movl	12(%ebp), %edx
	movl	-16(%ebp), %eax
	movl	%eax, (%edx)
	movl	-12(%ebp), %eax
	addl	-16(%ebp), %eax
	leave
	ret
.globl _caller
_caller:
	pushl	%ebp
	movl	%esp, %ebp
	subl	$40, %esp
	movl	$534, -20(%ebp)
	movl	$1057, -24(%ebp)
	leal	-24(%ebp), %eax
	movl	%eax, 4(%esp)
	leal	-20(%ebp), %eax
	movl	%eax, (%esp)
	call	_swap_add
	movl	%eax, -16(%ebp)
	movl	-20(%ebp), %edx
	movl	-24(%ebp), %eax
	movl	%edx, %ecx
	subl	%eax, %ecx
	movl	%ecx, %eax
	movl	%eax, -12(%ebp)
	movl	-16(%ebp), %eax
	imull	-12(%ebp), %eax
	leave
	ret
	.subsections_via_symbols
